﻿using Camc.Quality.QualityAnalysis.RFormBase;
using Camc.Quality.QualityAnalysis.RFormClass;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Camc.Quality.QualityAnalysis.RFormEntity
{
    public class R通用保护件检查记录表 : RTableBase
    {
        public R通用保护件检查记录表(int serialNum, Guid rWorkStepEntityId, Guid rProcessesEntityId, int sort, string firstDrawingName, string recordRemark)
        {
            SerialNum = serialNum;
            RWorkStepEntityId = rWorkStepEntityId;
            RProcessesEntityId = rProcessesEntityId;
            Sort = sort;
            FirstDrawingName = firstDrawingName;
            RecordRemark = recordRemark;
        }
        public override string FormName { get; protected set; } = "通用保护件检查记录表";
        #region A5_名称
        public override string FirstDrawingName_DisplayName { get; protected set; } = "名称";

        #endregion
        /// <summary>
        /// 记录要求
        /// </summary>
        /// <param name="entity"></param>
        /// <param name="recordLocation">安装位置</param>
        /// <param name="recordStatus">颜色</param>
        /// <param name="recordRequire">数量</param>
        /// <returns></returns>
        public RRecordRequirementsEntity SetRecordRequirements(RRecordRequirementsEntity entity, string recordLocation, string recordStatus, string recordRequire)
        {
            entity.SetRecordLocation(recordLocation, "安装位置");
            entity.SetRecordStatus(recordStatus, "颜色");
            entity.SetRecordRequire(recordRequire, "数量");
            return entity;
        }
        /// <summary>
        /// 实测值
        /// </summary>
        /// <param name="entity"></param>
        /// <param name="confirmResult"></param>
        /// <param name="measuredActual"></param>
        /// <returns></returns>
        public RMeasuredResultEntity SetMeasuredResult(RMeasuredResultEntity entity, string confirmResult, string measuredActual)
        {
            entity.SetConfirmResult(confirmResult, "检查情况");
            entity.SetMeasuredActual(measuredActual, "问题记录");
            return entity;
        }
        /// <summary>
        /// 三检
        /// </summary>
        /// <param name="entity"></param>
        /// <returns></returns>
        public RInspectionSignatureEntity SetInspectionSignature(RInspectionSignatureEntity entity, string firstOperator, DateTime? firstOperatorTime, string secondOperator, DateTime? secondOperatorTime, string thirdOperator, DateTime? thirdOperatorTime)
        {
            entity.InspectionSignatureName = "三检";
            entity.SetFirstOperator(firstOperator, "操作者", firstOperatorTime, "操作者操作时间");
            entity.SetSecondOperator(secondOperator, "互检者", secondOperatorTime, "互检者操作时间");
            entity.SetThirdOperator(thirdOperator, "检验员", thirdOperatorTime, "检验员操作时间");
            return entity;
        }
    }
}
